package com.ruoyi.datastatistics.mapper;

import java.util.List;
import java.util.Map;

import com.ruoyi.datastatistics.domain.BillDetail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.datastatistics.domain.PublicShareReport;
import com.ruoyi.datastatistics.vo.DayOrMonthDosageStatistics;
import com.ruoyi.datastatistics.vo.DayOrMonthDosageStatisticsBill;
import org.apache.ibatis.annotations.Param;

/**
 * 开账明细Mapper接口
 *
 * @author zt
 * @date 2025-05-27
 */
public interface BillDetailMapper extends BaseMapper<BillDetail>
{
    List<BillDetail> selectList(BillDetail billDetail);
    //int insertForElectricityTerminals(String date);

    int insertForWaterTerminalsForOne(@Param("frequencyType") String frequencyType, @Param("month") String month,@Param("freezeTime")  String freezeTime, @Param("userId") String userId);

    int insertForWaterTerminalsForTwo(@Param("frequencyType") String frequencyType, @Param("month") String month,@Param("freezeTime")  String freezeTime, @Param("userId") String userId);

    int insertForWaterTerminalsForThree(@Param("frequencyType") String frequencyType, @Param("month") String month,@Param("freezeTime")  String freezeTime, @Param("userId") String userId);


    List<DayOrMonthDosageStatisticsBill> selectBillDetailList(Map<String,Object> paramMap);


    int insertForElectricityTerminalsForOne(@Param("frequencyType") String frequencyType, @Param("month") String month,@Param("freezeTime")  String freezeTime, @Param("userId") String userId);

    int insertForElectricityTerminalsForTwo(@Param("frequencyType") String frequencyType, @Param("month") String month,@Param("freezeTime")  String freezeTime, @Param("userId") String userId);

    int insertForElectricityTerminalsForThree(@Param("frequencyType") String frequencyType, @Param("month") String month,@Param("freezeTime")  String freezeTime, @Param("userId") String userId);

    int insertForElectricityTerminalsOneDay(@Param("freezeTime") String freezeTime);

    int insertForWaterTerminalsOneDay(@Param("freezeTime") String freezeTime);
}
